/*
Problem Description
给你一个高为n ，宽为m列的网格，计算出这个网格中有多少个矩形，下图为高为2，宽为4的网格.

Input
第一行输入一个t, 表示有t组数据，然后每行输入n,m,分别表示网格的高和宽 ( n < 100 , m < 100).
Output
每行输出网格中有多少个矩形.
Sample Input
2
1 2
2 4
Sample Output
3
30
 */
package com.yuan.algorithms.practice201512;

import java.util.Scanner;

/**
 * @author YouYuan
 * <br>E-mail:1265161633@qq.com
 * <br>创建时间：2015年12月5日 上午9:26:01
 * <br>说明:将每一行有多少个矩形与每一列有多少个矩形计算出来，其任意的行矩形与列矩形组合均为一种矩形（即二者相乘为所要求得结果）。
 * 当只有一行的时候，矩形的个数是m+(m+1）+…+1=m*(m+1)/2; 所以当有n行的时候就是n个m行所以就是m*(m+1)/2*n*(n+1)/2;
 */
public class 矩形A加B {
	static Scanner in = new Scanner(System.in);
	public static void main(String[] args) {
		while(in.hasNext()) {
			int t = in.nextInt();
			while(t-- > 0) {
				int n = in.nextInt();
				int m = in.nextInt();
				System.out.println((n*(n+1)>>1)*(m*(m+1)>>1));
			}
		}
	}
}
